iT邦幫忙

2021 iThome 鐵人賽

DAY 3
0
Modern Web

golang後端入門分享系列 第 3

Day3-golang 環境建設(macOS)

  • 分享至 

  • xImage
  •  

前言

因為本身是以 MAC 在開發程式,所以本篇文章是以安裝 Go 的環境在 macOS 為主,那如果你是使用 linux 或 windows 的作業系統,本篇可能不適合你,但您也可到官網參考。

Go 安裝(Homebrew)
大多的 MAC 使用者,應該都會下載 Homebrew,那如果你還沒下載的話,建議你先下載,因為真的很方便,而且你沒下載我會沒辦法講下去XD,所以請到這裡去下載吧。

當您下載好 Homebrew 後,那只要到終端機(terminal)去下一行指令, 即可安裝好 Go 的環境,

$ brew install go

當您下了這行指令,會自動幫你下載、解壓縮以及安裝,就是那麼方便,所以你還不安裝 Homebrew 嗎?

在 brew 跑完安裝後,你可以在下個指令確認是否安裝成功,而安裝會是最新的版本。

$  go version     
go version go1.16.3 darwin/amd64

go version 可以確認現在你安裝的 Go 版本,上述只是拿我自己安裝的版本示範,並非最新的版本。


Go 環境設定

當你安裝完 Go 之後,之後就是環境變數設定了,可以特過以下指令確認 Go 的環境變數,

$ go env

指令下下去,就跑出以下設定內容:

GO111MODULE=""
GOARCH="amd64"
GOBIN=""
GOCACHE="/Users/jc_lai/Library/Caches/go-build"
GOENV="/Users/jc_lai/Library/Application Support/go/env"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOINSECURE=""
GOMODCACHE="/Users/jc_lai/go/pkg/mod"
GONOPROXY=""
GONOSUMDB=""
GOOS="darwin"
GOPATH=""
GOPRIVATE=""
GOPROXY="https://proxy.golang.org,direct"
GOROOT="/usr/local/go"

先說大家的一開始都會有所不同,所以不要太過緊張你的跟我不一樣,我這裡只截取了部分的內容,一些可能前期比較重要的,例如 GOPATH,他是有關管理程式碼和套件以及執行檔的地方,GOPATH 一開始會是空白的,所以你必須填入位址給它:

$ export GOPATH=$HOME/go

接著來說明這個位址,你必須到自己的 HOME目錄下,建立一個叫 go(或是golang也可,自己喜歡就好) 的資料夾,並且在裡面建立三個資料夾:

  • src - 你主要的專案(程式碼)都會放在這
  • pkg - 套件主要儲存的資料夾
  • bin - 存放編譯好的執行檔

編譯器(VScode)

編譯器其實是個輔助工具,能讓你在寫 code 時更加輕鬆方便,那如果你本身若是使用 vim 等需要硬底子的編譯器,那這裏可以跳過,這裏要介紹的是 Visual Studio Code(以下簡稱 VScode),一開始,你還是要先下載安裝,可到這裏參考並進行安裝。

在安裝好後,你可以把有關 Go 的 plug-in 先下載好。
https://ithelp.ithome.com.tw/upload/images/20210911/20137500jQIv2AqRkM.png

下載後,會方便開發程式,有一些自動排版的功能,或是 Go To Definition,詳細內容可參考這裡

接這你可以開啟自動儲存的功能,你就不用每次都 command+s 了,當然有時要自動排版,你還是得 command+s 。
https://ithelp.ithome.com.tw/upload/images/20210911/20137500oIPMpobuAL.png


結語

接這你就可以寫你第一隻 Go 程式了,明天會為各位讀者帶來第一支程式,並說解一隻 Go 程式的基本架構,今天環境架設就解說到這裡,其實 Go 很容易安裝,對開發者很友善,希望今天的文章有幫助到你,感謝今天的閱讀!


上一篇
Day2-Start to go
下一篇
Day4-Go Go Go!第一隻 golang!
系列文
golang後端入門分享30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言